Android Studio 3.6 稳定版发布
作者 / Scott Swarthout, Product Manager
Android Studio 3.6 的一些亮点包括: 使用 XML 快速设计、开发和预览应用布局的新方式,以及设计编辑器中新加入的分割视图 (Split View) 。我们将 Google Maps 直接嵌入到了 Android Emulator 的扩展控制面板中,因此现在您无需手动输入 GPS 坐标即可在应用中测试位置。最后,我们通过自动检测 Fragment 和 Activity 的内存泄漏,让优化应用和查找错误变得更加容易。希望这些功能可以让您在 Android 上进行开发时更愉快和高效。
我们要感谢那些在预览版本阶段提供早期反馈的开发者们,正是大家的反馈让我们得以迭代和改进 Android Studio 3.6 中的功能。如果您已经准备好使用这个全新的稳定版本,及其带来的全新生产力功能,请即刻下载 Android Studio 3.6。
Android Studio 3.6
https://developer.android.google.cn/studio
接下来我们会按照主要的开发流程为大家逐一介绍 Android Studio 3.6 的新功能。
腾讯视频链接 https://v.qq.com/x/page/p0932212o0c.html Bilibili 视频链接 https://www.bilibili.com/video/av95444110/
设计
设计编辑器中的分割视图 (Split View)
开发
视图绑定 (View Binding)
android {
viewBinding {
enabled = true
}
}
视图绑定 https://developer.android.google.cn/topic/libraries/view-binding 博客文章 (Android 中的视图绑定) https://medium.com/google-developer-experts/exploring-view-binding-on-android-44e57ba11635
Android Studio 中的以下 NDK 功能以前在 Java 语言中受支持,现在也在 Kotlin 中受支持:
从 JNI 声明转到 C/C++ 中的对应实现函数。只需将鼠标悬停在托管源代码文件中的行号附近的 C 或 C++ 项标记上方,即可查看此映射。
自动为 JNI 声明创建桩实现函数。首先定义 JNI 声明,然后输入 "jni" 或 C/C++ 文件中的方法名称进行激活。
了解更多:
Android Studio 3.6 中的 NDK 更新 https://developer.android.google.cn/studio/preview/features/#3.6-ndk-updates
IntelliJ 平台更新
IntelliJ IDEA 2019.2 https://blog.jetbrains.com/idea/2019/07/intellij-idea-2019-2-java-13-preview-features-profiling-tools-services-tool-window-and-more/
通过 Apply Changes 添加类
您现在可以通过两项简易操作来添加一个类,然后将该代码更改部署到正在运行的应用中 —— 点击 Apply Code Changes 按钮或 Apply Changes and Restart Activity 按钮。要详细了解这两项操作之间的区别,请参阅应用更改。
应用更改 https://developer.android.google.cn/studio/run#apply-changes
构建
Android Gradle 插件 (AGP) 更新
Android Gradle 插件 3.6 及更高版本支持 Maven Publish Gradle 插件,可让您将构建工件发布到 Apache Maven 代码库。Android Gradle 插件会为应用或库模块中的每个构建变体工件创建一个组件,您可以使用它来自定义要发布到 Maven 代码库的发布内容。这项更改将让您可以更轻松地管理各种目标的发布生命周期。
了解更多:
Maven Publish Gradle 插件 https://developer.android.google.cn/studio/releases/gradle-plugin#maven-publish
新打包工具
Android 构建团队一直在不断进行改进,以提高构建性能,在这个版本中,我们把测试构建默认的打包工具改为 zipflinger。用户应该会看到构建速度有所提高,但是您也可以在 gradle.properties 文件中设置 android.useNewApkCreator=false 从而继续使用原来的打包工具。
zipflinger https://android.googlesource.com/platform/tools/base/+/refs/heads/mirror-goog-studio-master-dev/zipflinger/
测试
Android 模拟器 - Google Maps UI
Android 模拟器 29.2.12 为应用开发者提供了一种全新的模拟输入设备位置的方法。我们将 Google Maps 用户界面嵌入到了扩展控件菜单中,方便您更容易地输入位置,以及通过两个位置点生成路线。您可以保存各个位置点,并将其作为虚拟位置重新发送到设备,您还可以通过键入地址或点击两个点来生成路线。这些路线可以实时重播,因为路线上的位置也被发送到了模拟器里的操作系统中。
Android 模拟器 29.1.10 版本中包含了对多显示屏 (Multi-display) 的初步支持。随着多屏设备的不断涌现,为您的应用测试多显示屏的配置变得十分重要,您可以通过模拟器的 Extended controls 窗口,选择 Settings 选项来设置多屏幕。
△ 在 Android 模拟器扩展控件面板中配置辅助的显示屏
在使用 Android Studio SDK 管理器下载 Android SDK 组件和工具时,Android Studio 现在允许您恢复已中断的下载 (例如,由于网络问题),而不是从头开始重新下载。当互联网连接不可靠时,此增强功能对大量数据的下载 (如 Android 模拟器或系统映像) 特别有用。
△ 暂停和恢复 SDK 下载
就地更新导入的 APK
Android Studio 允许您导入外部构建的 APK,并对其进行调试和分析。以前,对这些 APK 进行更改后,您需要再次手动将其导入,并重新附加符号和代码。Android Studio 3.6 现在可以自动检测对导入的 APK 文件所做的更改,并提供就地重新导入的选项。
导入外部构建的 APK
https://developer.android.google.cn/studio/debug/apk-debugger
现在支持将 Kotlin 源文件附加到导入的 APK。要了解更多信息,请参阅附加 Kotlin/Java 代码。
附加 Kotlin/Java 代码
https://developer.android.google.cn/studio/debug/apk-debugger#attach_java
优化
Memory Profiler 中的泄漏检测
Memory Profiler 文档 https://developer.android.google.cn/studio/profile/memory-profiler#profiler-memory-leak-detection
在 APK 分析器中对类和方法字节码进行去混淆处理
△ 在 APK 分析器中选择 Show Bytecode 对类和方法字节码进行去混淆处理
APK 分析器 https://developer.android.com/studio/build/apk-analyzer
设计
设计编辑器中的 Split View 拾色器资源选项卡
开发
视图绑定 Android NDK 更新 IntelliJ 平台更新 通过 Apply Changes 添加类
构建
Android Gradle 插件 (AGP) 更新
新打包工具
测试
Android 模拟器 - Google Maps UI
多显示屏支持
可恢复的 SDK 下载
就地更新导入的 APK
将 Kotlin 代码附加到导入的 APK
优化
Memory Profiler 中的泄漏检测
在 APK 分析器中对类和方法字节码进行去混淆处理
即刻开始
下载
下载页面
https://developer.android.google.cn/studio/
和以往一样,我们欢迎大家向我们反馈您喜欢的特性、发现的问题或者想要的功能。如果您发现了错误或问题,请随时告知我们。
想了解更多 Android 内容?
在公众号首页发送关键词 "Android",获取相关历史技术文章;
在公众号首页发送关键词 "ADS",获取开发者峰会演讲中文字幕视频;
还有更多疑惑?欢迎点击菜单 "联系我们" 反馈您在开发过程中遇到的问题。
推荐阅读